home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d961.lha / MPMaster / English / MPMaster.DOC < prev    next >
Text File  |  1993-11-30  |  11KB  |  291 lines

  1.  
  2.            MIDI Packet Master  © 1993 WareSoft  All rights reserved
  3.                         by Antonio J. Pomar Rosselló
  4.  
  5.  
  6.  
  7. DISTRIBUTION
  8.  
  9.    This program is FreeWare.  The program  can  be  freely distributed provided
  10. that all the associated files are distributed with the program itself.  Neither
  11. the  program nor  their  associated files  must  be  modified  in any way.  The
  12. complete distribution  package can be compressed  with  LHA,  LHarc  or similar
  13. for distribution convenience.  No charge  must be  made for use or distribution
  14. of this package.
  15.  
  16.    The complete English distribution package contains:
  17.  
  18.         MPMaster            Executable program.
  19.         MPMaster.DOC        This file.
  20.         MPMaster.HISTORY    History of versions released since v1.0.
  21.         MPMaster.SCHEME     Electronic scheme of a very simple MIDI interface.
  22.  
  23.    This software is provided 'AS IS'  without  warranty  of  any  kind,  either
  24. expressed or implied. By using this package you agree to accept the entire risk
  25. as  to  the  quality  and  performance of the program and of the MIDI interface
  26. described in MPMAster.SCHEME.
  27.  
  28.    All trademarks and Copyrights of products mentioned  in  this  document  are
  29. acknowledged by the author.
  30.  
  31.    As you can see, within the package there is an IFF  screen  that  shows  the
  32. scheme  of  a  very  simple  MIDI interface that you can build to use with your
  33. computer. This interface was developed originally 6 years ago for  a  sequencer
  34. programmed  in  assembler for my Sinclair Spectrum +3. This circuit is so small
  35. that can be placed inside the case of the DB-25 connector (the Spectrum version
  36. of the interface fitted inside a DB-9 case). Is strictly prohibited the use  of
  37. this  circuit  for  commercial  purposes, that means that the interface must be
  38. built for personal use only.
  39.  
  40.  
  41.  
  42. REQUIREMENTS
  43.  
  44.    This program needs WorkBench 2.04 (version 37) or higher to run.
  45.  
  46.    Eventually you will need a MIDI interface and one or more  MIDI  devices  to
  47. connect with the computer.
  48.  
  49.  
  50.  
  51. INTRODUCTION
  52.  
  53.    This program is called MIDI Packet Master (MPMaster for short) and its  main
  54. purpose  is  to  transmit/receive  samples  between an Amiga computer an a MIDI
  55. device that supports this kind of transference (originally programmed  for  use
  56. with a Yamaha SY85 synthesizer).
  57.  
  58.  
  59.  
  60. MIDI STANDARD
  61.  
  62.    The MIDI Sample Dump Standard splits the sample in small packets (127 bytes)
  63. that are transmitted sequentially to the destination MIDI  device.  This  slows
  64. down  the  transference but allows error correction without repeating the whole
  65. sample.
  66.  
  67.    The main characteristics of this standard are:
  68.  
  69.    - Maximum sample size: 2 million sample units
  70.    - Sample resolution: 8, 12 or 16 bits
  71.    - Any MIDI channel can be used (1 to 16).
  72.    - Transmission of loop parameters.
  73.    - Control over placing of sample over the keyboard (period).
  74.  
  75.    Actually I don't know how works the 'Period' parameter, and the SY85  manual
  76. is  not  very  explicit about the subject. If you know how it works please send
  77. me the information for a better implementation of the standard in the program.
  78.  
  79.    Consult  the  user's  manual  of  your  MIDI  equipment  for  details  about
  80. implementation and use of MIDI Sample Dump Standard.
  81.  
  82.  
  83.  
  84. THE STANDARD IN THE PROGRAM
  85.  
  86.       The  program  can  transmit  and  receive  samples  via  MIDI.  The  main
  87. characteristics are:
  88.  
  89.   Reception:
  90.    - Reception channel selectable (1-16)
  91.    - Any sample resolution from 8 to 21 bits.
  92.    - The program only saves in RAW 8 bits format.
  93.    - Display all characteristics of sample received.
  94.    - Detect receive errors, but don't support error retrieval yet.
  95.    - Reception can be aborted.
  96.  
  97.   Transmission:
  98.    - Transmission channel selectable (1-16), independent of receive channel.
  99.    - Manual adjustment of loop parameters (start, end and type).
  100.    - Sample is transmitted always in 8 bits format.
  101.    - Transmission can be aborted.
  102.  
  103.    The implementation of the standard in the program is very basic, due to  the
  104. limited information that I have about this standard.
  105.  
  106.  
  107.  
  108. USE OF PROGRAM
  109.  
  110.    The program must be launched from WorkBench, because of  the  options  saved
  111. inside  the  program's icon. If you run it from SHELL any of those options will
  112. be loaded.  Anyway,  the program will detach itself  from the SHELL  window and
  113. will run with the internal default values.
  114.  
  115.    Any hardware resource used by the program is allocated through the OS,  that
  116. means, 'legally'.
  117.  
  118.    Be careful about multi-tasking with programs that  access  to  the  hardware
  119. directly, like the Dr T's  KCS sequencer, because can interfere the use of this
  120. hardware. Usually this turns crazy the MIDI device connected with the computer.
  121. Anyway this case is  not  very  usual.  Even  not 'professional' programs  like
  122. Protracker 2.3 allocates correctly the serial hardware.
  123.  
  124.    Any kind  of problem while  starting the  program  will be  reported with  a
  125. requester and then the program will exit.
  126.  
  127.    The ToolTypes that can be placed in the icon are:
  128.  
  129.         WB_REQUESTER    With this the program will open the filerequester
  130.                         in the WorkBench.
  131.  
  132.         PATTERN=        Here we can put a pattern for the filerequester.
  133.  
  134.         DIR=            This is the default path where will be opened the
  135.                         filerequester.
  136.  
  137.         FREC=           Sets de default play speed for RAW samples.
  138.  
  139.         MAXFREC=        Sets the maximum play speed allowed. Initially is
  140.                         28867 but this may change in future chip sets.
  141.  
  142.    The WB_REQUESTER option is suitable for filerequesters that are  AppWindows,
  143. that is, icons can be dropped inside the filerequester.
  144.  
  145.  
  146.  
  147. PROGRAM'S SCREEN
  148.  
  149.    The program's screen is divided in 4 main parts:
  150.  
  151.    TRANSMISSION: Here we can control the parameters transmitted to the MIDI
  152.    device. The gadgets are:
  153.  
  154.    Select.- Open the filerequester for select a RAW or IFF sample for
  155.      transmission. When selected the sample all other gadgets will be
  156.      set at the proper values.
  157.  
  158.    Frequency.- This is the playing speed of sample when we click over the
  159.      'Play' gadget.
  160.  
  161.    Waveform.- This must set the number assigned to the sample inside of
  162.      the MIDI device. In the SY85 this sets the WAVEFORM where the sample
  163.      will be placed.
  164.  
  165.    Loop start, Loop end, Loop Type.- This is the loop margin and type.
  166.  
  167.    Transmit.- Sends the sample currently selected. The sample is transmitted
  168.      directly from disk. That means that you are not limited by the memory you
  169.      have.
  170.  
  171.    X.-  Clears the TRANSMISSION zone.
  172.  
  173.  
  174.    RECEPTION: Here we can see the details about the sample received. The 3
  175.    gadgets are:
  176.  
  177.    Receive.- The program waits for a sample to receive. Can de aborted with
  178.      the stop gadget or with the space bar. The sample is placed in memory,
  179.      so here you are limited to the amount of memory available in one
  180.      continuous block.
  181.  
  182.    Save sample.- If a sample have been received you can save it in RAW8 format.
  183.  
  184.    X.- Clears the reception zone and frees the memory allocated for sample.
  185.  
  186.  
  187.    CHANNELS: Here you can set the IN/OUT channels. The 'omni' receive channels
  188.    means that all input channels will be read.
  189.  
  190.    LOWER ZONE: This is the message zone. There are two gadgets that allows
  191.    to play the sample selected.
  192.  
  193.  
  194.  
  195. MENUS AND KEYBOARD
  196.  
  197.    All gadgets with an underlined character means that pressing that  character
  198. on  the  keyboard  is  equal  to  press  the  gadget  itself.  The space bar is
  199. equivalent to the STOP!! gadget. The HELP key will show the  'About'  requester
  200. and the 'Esc' key will quit the program. With the TAB key you can move from one
  201. Integer  gadget  to  the  next, and Shift+TAB will move to the previous Integer
  202. gadget.
  203.  
  204.    In the menu you can find the 'About...' and 'Quit' options, that don't  have
  205. equivalent gadget.
  206.  
  207.  
  208.  
  209. TECHNICAL DATA
  210.  
  211.    Program written in assembler and accessing 'legally'  to  the  hardware.  Is
  212. stable and allows complete multi-tasking, even when transmitting/receiving.
  213.  
  214.    Programmed in an Amiga 500 Plus with 2 Meg of RAM, 3 disk drives and  Devpac
  215. 3.02  assembler.  This  is my first program that does multi-task and the second
  216. that I write in assembler.
  217.  
  218.    Initially developed for use with a friend's Yamaha SY85 synthesizer.
  219.  
  220.  
  221.  
  222. FUTURE IMPROVEMENTS
  223.  
  224.    These are the improvements that I would like to do:
  225.  
  226.    - Transmit/receive simultaneously.
  227.    - Receive direct to hard disk, avoiding the memory limitations.
  228.    - AREXX port for control of other programs from MPMaster or vice versa.
  229.    - Option for change the transmit/receive speed (currently 31250) for
  230.      transfers between computers or with high speed MIDI interfaces.
  231.    - Labels for each IN/OUT channel. This is for better using in MIDI
  232.      environments with lots of different devices, each one using one MIDI
  233.      channel.
  234.    - Use of powerpacker.library for compress/decompress samples.
  235.    - Allocate of serial hardware only during transmit/receive.
  236.    - Support for different sample formats (8 or more bits).
  237.    - Support of Fibonacci compression in reading of IFF samples.
  238.    - Save icons with the sample containing the received parameters.
  239.    - On line help (if anyone thinks that the program is difficult to use).
  240.    - Separate filerequesters for Load and Save, storing the last path used
  241.      in each one.
  242.    - Batch sending of samples from scripts.
  243.    - Optional use of error retrieval messages.
  244.    - Graphical edit of loop margin.
  245.    - Multilingual support with locale.library.
  246.  
  247.    Anyway I don't know if I will implement these improvements in  the  program,
  248. depending  of  the  information  that  I can get about MIDI standard and system
  249. libraries. Actually I don't use this program because I am not  a  musician  nor
  250. I have a synthesizer.
  251.  
  252.  
  253.  
  254. ACKNOWLEDGMENTS
  255.  
  256.    I wish to thank to:
  257.  
  258.    - Fco Javier Cocaña Galán, Leonardo Cocaña Galán and Juan A. Estela Valín
  259.      for their friendship and suggestions.
  260.    - Commodore-Amiga Inc for create the very best computer in the world.
  261.    - Motorola for their powerful and flexible microprocessors.
  262.    - Nico François for create the wonderful reqtools.library.
  263.    - IBM and Atari for create so bad computers, making very easy my choosing
  264.      for the Amiga.
  265.  
  266.  
  267.  
  268. CONTACTS
  269.  
  270.    If you have some kind of information  about  the  MIDI  standard,  different
  271. sample  formats  or  any other interesting information related with the program
  272. then please send it to me to the address below. Anyway, if you use the  program
  273. please  let  me know, because I would like to know if anyone is using it and in
  274. what MIDI devices the program works well, or not so well.
  275.  
  276.    For sending suggestions, bugs, information interchange, etc., contact me  at
  277. the following address:
  278.  
  279.                          Antonio J. Pomar Rosselló
  280.                        C/ Alférez Cerdá  nº 13-bajos
  281.                           Palma de Mallorca 07014
  282.                              Baleares (Spain)
  283.  
  284.  
  285. Palma de Mallorca (Palma of Majorca)  24-November-1993
  286.  
  287. NOTE:  my knowledge of  English is  VERY limited,  and  this  text  is  a  good
  288. sample  of  this  fact.  Moreover, this DOC was wrote, in a hurry, based in the
  289. Spanish version. If you know Spanish, I  recommend  you  to  read  the  Spanish
  290. version of this DOC. Its much more detailed and accurate.
  291.